package cn.stylefeng.guns.modular.jobTask.service;

import cn.stylefeng.guns.modular.jobTask.pojo.result.JobTaskNodeResult;
import cn.stylefeng.roses.kernel.db.api.pojo.page.PageResult;
import cn.stylefeng.guns.modular.jobTask.entity.JobTask;
import cn.stylefeng.guns.modular.jobTask.pojo.request.JobTaskRequest;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * 任务表 服务类
 *
 * @author LiZh
 * @date 2024.07.08
 */
public interface JobTaskService extends IService<JobTask> {

	/**
     * 新增
     *
     * @param jobTaskRequest 请求参数
     * @author LiZh
     * @date 2024.07.08
     */
    void add(JobTaskRequest jobTaskRequest);

	/**
     * 删除
     *
     * @param jobTaskRequest 请求参数
     * @author LiZh
     * @date 2024.07.08
     */
    void del(JobTaskRequest jobTaskRequest);

	/**
     * 编辑
     *
     * @param jobTaskRequest 请求参数
     * @author LiZh
     * @date 2024.07.08
     */
    void edit(JobTaskRequest jobTaskRequest);

	/**
     * 查询详情
     *
     * @param jobTaskRequest 请求参数
     * @author LiZh
     * @date 2024.07.08
     */
    JobTask detail(JobTaskRequest jobTaskRequest);

	/**
     * 获取列表
     *
     * @param jobTaskRequest        请求参数
     * @return List<JobTask>   返回结果
     * @author LiZh
     * @date 2024.07.08
     */
    List<JobTask> findList(JobTaskRequest jobTaskRequest);

	/**
     * 获取列表（带分页）
     *
     * @param jobTaskRequest              请求参数
     * @return PageResult<JobTask>   返回结果
     * @author LiZh
     * @date 2024.07.08
     */
    PageResult<JobTask> findPage(JobTaskRequest jobTaskRequest);

    List<JobTaskNodeResult> tree(JobTaskRequest jobTaskRequest);

}